Beginning Java Data Structures and Algorithms: Sharpen your problem solving skills by learning core computer science concepts in a pain-free manner by James Cutajar

Beginning Java Data Structures and Algorithms: Sharpen your problem solving skills by learning core computer science concepts in a pain-free manner by James Cutajar

Author:James Cutajar [Cutajar, James]
Language: eng
Format: epub, pdf
Tags: COM051010 - COMPUTERS / Programming Languages / General, COM051300 - COMPUTERS / Programming / Algorithms, COM051280 - COMPUTERS / Programming Languages / Java
Publisher: Packt Publishing
Published: 2018-07-29T23:00:00+00:00


public Optional<K> minKey()

The method needs to find the minimum key in the tree and return it. If the tree is empty, it should return an empty optional.

Finding the minimum in a binary search tree requires us to always follow the left child node until we reach a node with no left child pointer. The following code demonstrates this:

public Optional<K> minKey() {

return Optional.ofNullable(root).map(this::minKey);

}

private K minKey(BinaryTreeNode<K, V> node) {

return node.getLeft().map(this::minKey).orElse(node.getKey());

}

Snippet 3.12: Minimum key operation. Source class name: SimpleBinaryTree.



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.